package com.tulele.vtool.service;

import com.tulele.vtool.model.UserArticleTypeInfo;
import com.tulele.vtool.model.combinedEntity.CombinedUserArticleTypeInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface IUserArticleTypeInfoService {

    /**
     * 记录用户文章类型关注信息
     * @return
     */
    int recordUserArticleTypeInfo(Integer userId, String userArticleTypeIds);

    /**
     * 获取文章类型信息--包含用户关注的类型
     * @param userId
     * @return
     */
    List<CombinedUserArticleTypeInfo> getUserArticleTypeInfo(Integer userId);

    /**
     * 获取用户个人关注文章类型
     * @param userId
     * @return
     */
    List<CombinedUserArticleTypeInfo> getUserPersonalArticleTypeInfo(Integer userId);

    /**
     * 修改用户文章类型关注状态
     * @param userArticleTypeInfo
     * @return
     */
    int modifyUserArticleTypeEffectiveStatus(UserArticleTypeInfo userArticleTypeInfo);

    /**
     * 查询用户关注的文章类型
     * @param userId
     * @return
     */
    List<Integer> getUserConcernArticleTypeInfo(@Param("userId")Integer userId);
}
